import junit.framework.TestCase;

import org.junit.Test;

public class ComplexTest extends TestCase {

    Complex c1 = new Complex(1.0, 2.0);

    Complex c2 = new Complex(2.0, 2.0);

    Complex c3 = new Complex(2.0, 0.0);





    @Test

    public void testComplexAdd() throws Exception {

        assertEquals("3.0+4.0i", c1.ComplexAdd(c2).toString());

        assertEquals("3.0+2.0i", c1.ComplexAdd(c3).toString());

        assertEquals("4.0+2.0i", c2.ComplexAdd(c3).toString());



    }



    @Test

    public void testComplexSub() throws Exception {

        assertEquals("-1.0", c1.ComplexSub(c2).toString());

        assertEquals("-1.0+2.0i", c1.ComplexSub(c3).toString());

        assertEquals("0.0+2.0i", c2.ComplexSub(c3).toString());



    }



    @Test

    public void testComplexMulti() throws Exception {

        assertEquals("-2.0+6.0i", c1.ComplexMulti(c2).toString());

        assertEquals("2.0+4.0i", c1.ComplexMulti(c3).toString());

        assertEquals("4.0+4.0i", c2.ComplexMulti(c3).toString());



    }



    @Test

    public void testComplexComplexDiv() throws Exception {

        assertEquals("0.75+0.75i", c1.ComplexDiv(c2).toString());

        assertEquals("1.0+0.5i", c1.ComplexDiv(c3).toString());

        assertEquals("1.0+1.0i", c2.ComplexDiv(c3).toString());



    }

}
